home *** CD-ROM | disk | FTP | other *** search
Text File | 1989-10-13 | 2.7 KB | 104 lines | [TEXT/MPS ] |
- ; Version: 1.04
- ; Created: Wednesday, October 26, 1988 at 11:57:17 PM
- ;
- ; File: Sound.a
- ;
- ; Assembler Interface to the Macintosh Libraries
- ; Copyright Apple Computer, Inc. 1986-1988
- ; All Rights Reserved
- ;
- ;--------------------------------------------------------------------
-
-
- ;Command Numbers
-
- nullCmd EQU 0
- initCmd EQU 1
- freeCmd EQU 2
- quietCmd EQU 3
- flushCmd EQU 4
- waitCmd EQU 10
- pauseCmd EQU 11
- resumeCmd EQU 12
- callBackCmd EQU 13
- syncCmd EQU 14
- emptyCmd EQU 15
- tickleCmd EQU 20
- requestNextCmd EQU 21
- howOftenCmd EQU 22
- wakeUpCmd EQU 23
- availableCmd EQU 24
- versionCmd EQU 25
- noteCmd EQU 40
- restCmd EQU 41
- freqCmd EQU 42
- ampCmd EQU 43
- timbreCmd EQU 44
- waveTableCmd EQU 60
- phaseCmd EQU 61
- soundCmd EQU 80
- bufferCmd EQU 81
- rateCmd EQU 82
- midiDataCmd EQU 100
- stdQLength EQU 128
-
- ; Wave Table Synthesizer
- initChanLeft EQU $02 ;left stereo channel
- initChanRight EQU $03 ;right stereo channel
- initChan0 EQU $04 ;channel 0 - wave table only
- initChan1 EQU $05 ;channel 1 - wave table only
- initChan2 EQU $06 ;channel 2 - wave table only
- initChan3 EQU $07 ;channel 3 - wave table only
- initSRate22k EQU $20 ;22k sampling rate
- initSRate44k EQU $30 ;44k sampling rate
- initMono EQU $80 ;monophonic channel
- initStereo EQU $C0 ;stereo channel
-
-
- SndCommand RECORD 0
- cmd DS.W 1 ;INTEGER
- param1 DS.W 1 ;INTEGER
- param2 DS.L 1 ;LONGINT
- sndCSize EQU * ;size of SndCommand
- ENDR
-
- ModifierStub RECORD 0
- nextStub DS.L 1 ;^ModifierStub
- code DS.L 1 ;ProcPtr
- userInfo DS.L 1 ;LONGINT
- count DS.L 1 ;Time [LONGINT]
- every DS.L 1 ;Time [LONGINT]
- flags DS.B 1
- hState DS.B 1
- mStbSize EQU * ;size of ModifierStub
- ENDR
-
-
- SndChannel RECORD 0
- nextChan DS.L 1 ;^SndChannel
- firstMod DS.L 1 ;^ModifierStub
- callBack DS.L 1 ;ProcPtr
- userInfo DS.L 1 ;Ptr
-
- ;The following is for internal Sound Manager use only.
-
- wait DS.L 1 ;Time [LONGINT]
- cmdInProgress DS SndCommand ;
- flags DS.W 1 ;INTEGER
- qLength DS.W 1 ;INTEGER
- qHead DS.W 1 ;INTEGER
- qTail DS.W 1 ;INTEGER
- queue DS 128*SndCommand.sndCSize ; ARRAY [0..StdQLength-1] OF SndCommand
- sndChSize EQU * ;size of SndChannel
- ENDR
-
- SoundHeader RECORD 0
- samplePtr DS.L 1 ;Ptr - if NIL then samples are in sampleArea
- length DS.L 1 ;LONGINT
- sampleRate DS.L 1 ;Fixed
- loopStart DS.L 1 ;LONGINT
- loopEnd DS.L 1 ;LONGINT
- baseNote DS.W 1 ;INTEGER
- ;sampleArea DS.B 1 ;PACKED ARRAY [0..0] OF Byte; -- not included, but logically here
- ENDR
-